﻿using System;
using System.Collections.Generic;
using Newtonsoft.Json;
using System.Runtime.Serialization;

namespace T.FAS.Runtime.Metadata.Entity.Page
{
    /// <summary>
    /// 主题元数据
    /// </summary>
    [DataContract]
    [Serializable]
    public class ThemeMetaData : AbsMetaDataContent
    {
        [DataMember]
        public override string MetaDataID { get; set; }
        [DataMember]
        public override string MetaDataCode { get; set; }
        [DataMember]
        public override string MetaDataName { get; set; }
        /// <summary>
        /// 主键
        /// </summary>
        [DataMember]
        public string ID { get; set; }
        /// <summary>
        /// 创建人
        /// </summary>
        [DataMember]
        public override string Creator { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        [DataMember]
        public override DateTime CreateTime { get; set; }
        /// <summary>
        /// 最后修改人
        /// </summary>
        [DataMember]
        public override string LastModifier { get; set; }
        /// <summary>
        /// 最后修改时间
        /// </summary>
        [DataMember]
        public override DateTime LastModifyTime { get; set; }
        /// <summary>
        /// Code
        /// </summary>
        [DataMember]
        public string Code { get; set; }
        /// <summary>
        /// 名称
        /// </summary>
        [DataMember]
        public string Name { get; set; }
        /// <summary>
        /// 租户id
        /// </summary>
        public string TenantID { get; set; }
        /// <summary>
        /// 是否默认
        /// </summary>
        [DataMember]
        public bool IsDefault { get; set; }
        /// <summary>
        /// 版本
        /// </summary>
        [DataMember]
        public string Version { get; set; }
        /// <summary>
        /// 客户端类型
        /// </summary>
        [DataMember]
        public ClientType ClientType { get; set; }
        /// <summary>
        /// CSS样式
        /// </summary>
        [DataMember]
        public string StyleContent { get; set; }

        public override object Clone()
        {
            var newObject = this.MemberwiseClone() as ThemeMetaData;
            return newObject;
        }
    }
}
